home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2002 #3 / Amiga Plus CD - 2002 - No. 03.iso / AmiSoft / Dev / Gui / Cit.lha / CIT / citra / CITChooser.h < prev    next >
Encoding:
C/C++ Source or Header  |  2003-02-13  |  1.8 KB  |  82 lines

  1. //
  2. //                    CITChooser include
  3. //
  4. //                          StormC
  5. //
  6. //                     version 2003.02.12
  7. //
  8.  
  9. #ifndef CITCHOOSER_H
  10. #define CITCHOOSER_H TRUE
  11.  
  12. #include "CITGadget.h"
  13.  
  14. #include <gadgets/chooser.h>
  15.  
  16. //
  17. // This enum is for internal use only
  18. //
  19. enum
  20. {
  21.   CITCHOOSER_LABELS = 0,
  22.   CITCHOOSER_POPUP,
  23.   CITCHOOSER_DROPDOWN,
  24.   CITCHOOSER_TITLE,
  25.   CITCHOOSER_SELECTED,
  26.   CITCHOOSER_WIDTH,
  27.   CITCHOOSER_AUTOFIT,
  28.   CITCHOOSER_MAXLABELS,
  29.   CITCHOOSER_OFFSET,
  30.   CITCHOOSER_HIDDEN,
  31.   CITCHOOSER_LAST
  32. };
  33.  
  34. class CITChooser:public CITGadget
  35. {
  36.   public:
  37.     CITChooser();
  38.     ~CITChooser();
  39.  
  40.  
  41.     void Labels(char** labels);
  42.     void Labels(List* labels)
  43.            {setTag(CITCHOOSER_LABELS,CHOOSER_Labels,ULONG(labels));}
  44.     void PopUp(BOOL b = TRUE)
  45.            {setTag(CITCHOOSER_POPUP,CHOOSER_PopUp,b);}
  46.     void DropDown(BOOL b = TRUE)
  47.            {setTag(CITCHOOSER_DROPDOWN,CHOOSER_DropDown,b);}
  48.     void Title(char* title)
  49.            {setTag(CITCHOOSER_TITLE,CHOOSER_Title,ULONG(title));}
  50.     void Selected(WORD sel)
  51.            {setTag(CITCHOOSER_SELECTED,CHOOSER_Selected,sel);}
  52.     void Width(WORD w)
  53.            {setTag(CITCHOOSER_WIDTH,CHOOSER_Width,w);}
  54.     void AutoFit(BOOL b = TRUE)
  55.            {setTag(CITCHOOSER_AUTOFIT,CHOOSER_AutoFit,b);}
  56.     void MaxLabels(WORD max)
  57.            {setTag(CITCHOOSER_MAXLABELS,CHOOSER_MaxLabels,max);}
  58.     void Offset(WORD off)
  59.            {setTag(CITCHOOSER_OFFSET,CHOOSER_Offset,off);}
  60.     void Hidden(BOOL b = TRUE)
  61.            {setTag(CITCHOOSER_HIDDEN,CHOOSER_Hidden,b);}
  62.  
  63.     WORD Selected();
  64.  
  65.   protected:
  66.     virtual BOOL    Create(CITWindow* CITWd,CITContainer* parent);
  67.     virtual Object* NewObjectA(TagItem* tags);
  68.  
  69.   private:
  70.     void  setTag(int index,ULONG attr,ULONG val);
  71.  
  72.     TagItem* chooserTag;
  73.     CITList  labelList;
  74. };
  75.  
  76. enum
  77. {
  78.    CHOOSERCLASS_FLAGBITUSED = GADGETCLASS_FLAGBITUSED
  79. };
  80.  
  81. #endif
  82.